# -*- coding = utf-8 -*-

import requests
import json
import time

# 定义job的两个搜索条件
search_job = ["python",
              "大数据"]
# 定义ajax的初始URL
ajax_url = "http://www.techlabplt.com:8080/BD-PC/job/selectByPageAndConduction?pageSize=20&currentPage="
# 定义header 信息
header = {
    "accept": "application/json; charset=utf-8",
    #  www.techlabplt.com所对应的IP地址
    "host": "121.5.74.22:8080",
    "Origin": "http://www.techlabplt.com:8080"
}
# JSON 文件的存储路径
json_file = open("D:/job.json", 'w')

# 循环遍历搜索条件
for job_name in search_job:
    for page_num in range(1, 11):
        # 定义request 所携带的json数据
        search_data = {'jobName': job_name}
        # 发起request post请求。一定要写道json数据。
        response = requests.post(ajax_url+str(page_num), headers=header, json=search_data)
        # 如果正常返回，遍历输出数据到控制台。
        if response.status_code == 200:
            # 通过返回的数据转换为json格式，或者直接获取response.json。
            json_data = json.loads(response.text)
        # 控制台输出获取到的json数据
        print("搜索词：" + job_name + "，第一页数据：" + str(json_data))
        # 循环遍历输出每个数据内的职位名称
        for key in range(len(json_data['rows'])):
            # 控制台输出每条数据的职位名称
            # print(json_data['rows'][key]['jobName'])
            # 存入到JSON文件中
            price_json = json.dumps(json_data['rows'][key], ensure_ascii=False) + '\n'
            json_file.write(price_json)

        # 每次请求之间，睡1秒
        time.sleep(1)

# 关闭JSON文件
json_file.close()
